package com.chengh.nami.system.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.chengh.nami.common.domain.pojo.SysRole;
import com.chengh.nami.common.request.PageQuery;
import com.chengh.nami.common.response.PageData;
import com.chengh.nami.system.domain.dto.RoleDto;

import javax.servlet.http.HttpServletResponse;
import java.util.List;

/**
 * @author chengh
 */
public interface ISysRoleService extends IService<SysRole> {

    /**
     * 分页获取角色列表
     * @param roleDto 请求参数
     * @param PageQuery 分页参数
     * @return 信息
     */
    PageData<SysRole> getList(RoleDto roleDto, PageQuery PageQuery);


    /**
     * 添加角色信息
     * @param sysRole 角色信息
     * @return 是否成功
     */
    boolean addRole(SysRole sysRole);

    /**
     * 根据ID集合删除角色信息
     * @param ids 角色ID集合
     * @return 是否成功删除
     */
    boolean delRole(List<Long> ids);

    /**
     * 修改角色信息
     * @param sysRole 角色信息
     * @return 是否成功
     */
    boolean editRole(SysRole sysRole);

    /**
     * 文件下载
     * @param response HttpServletResponse
     * @param roleDto 查询条件
     * @param pageQuery 分页条件
     */
    void exportRoleExcle(HttpServletResponse response, RoleDto roleDto, PageQuery pageQuery);
}
